home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1996 March / MacWorld 03:96.toast / Online / PopupFuncs 2.7 / PopupFuncs Notes.c < prev    next >
Text File  |  1995-12-21  |  11KB  |  307 lines

  1. /*
  2. PopupFuncs 2.7 Notes
  3. ---------- --- -----
  4.  
  5. December 21, 1995
  6.  
  7. Because PopupFuncs is so simple to use, this text file constitutes the
  8. documentation for installing and using PopupFuncs. It also contains
  9. up-to-date news and information.
  10.  
  11. The license agreement for PopupFuncs is at the end of this file. Please
  12. read it before installing and using the software.
  13. */
  14.  
  15. #pragma mark What is PopupFuncs?
  16.  
  17. /*
  18. What is PopupFuncs?
  19. ---- -- -----------
  20.  
  21. PopUpFuncs (“PUF”) is a productivity tool for developers. When invoked
  22. by clicking on a control in a source code window’s title bar, it
  23. creates a popup menu of every function contained in a source code file,
  24. allowing you to see instantly the contents of an unfamiliar file. If a
  25. name is selected from the menu, the file is instantly scrolled to the
  26. beginning of that function. PopUpFuncs works with CodeWarrior, MPW,
  27. THINK C/Symantec C++, SADE, BBEdit, and QUED/M, and parses C, C++,
  28. Pascal, Object Pascal, assembler, Rez, and Fortran source files.
  29.  
  30. PopUpFuncs is extensible through an XCMD-like protocol. This package
  31. includes a language sensitive block-commenting and uncommenting tool
  32. which operates on the current selection. Hold the command key down
  33. while clicking on a control to get the XPOP menu. This package also
  34. includes the source code to this XPOP, as well as everything you need
  35. to build your own XPOPs.
  36.  
  37. PopUpFuncs is very fast, highly addictive, and VERY useful.
  38.  
  39. To install PopUpFuncs, launch the Installer and install PopupFuncs in
  40. your copy of BBEdit, CodeWarrior, MPW, THINK C, THINK Project Manager,
  41. Symantec Project Manager, or QUED/M. Do this now, and you’ll be able to
  42. try out PopUpFuncs on this very file!
  43. */
  44.  
  45. #pragma mark Installation
  46.  
  47. /*
  48. Installation
  49. ------------
  50.  
  51. To install PopupFuncs, launch the “PopupFuncs Installer” application.
  52. For each editor you wish to use PopupFuncs in, click the “Install” button
  53. and select the editor. (The editor must not be running at the time.)
  54.  
  55. After you have installed PopupFuncs in your editor(s), click the “Quit”
  56. button.
  57. */
  58.  
  59. #pragma mark Standard File Hacks
  60.  
  61. /*
  62. Standard File Hacks
  63. -------- ---- -----
  64.  
  65. There are some third-party extensions which modify the standard “Open” and
  66. “Save” dialogs (known colloquially as “Standard File”). In a couple of
  67. known cases, some of these extensions have a bug which causes correctly
  68. written applications to crash. Specifically:
  69.  
  70. -    “Click, there it is!”, version 1.0.1. Version 1.0.4 is current, and
  71.     fixes this problem. Registered owners should contact the author for
  72.     more information.
  73.     
  74. -    Quickeys version 2.1 also appears to have a similar problem.
  75.  
  76. If either of these extensions is installed, the PopupFuncs installer will
  77. crash when you click the “Choose...” button.
  78. */
  79.  
  80. #pragma mark Supported Editors
  81.  
  82. /*
  83. Supported Editors
  84. --------- -------
  85.  
  86. The following text editors (including integrated development environments)
  87. work with PopupFuncs. If you are writing an editor and would like to work
  88. with PopupFuncs, please write to us for information on the PopupFuncs API.
  89.  
  90. PopupFuncs 2.7 works with the following editors:
  91.  
  92.     BBEdit 2.5 and later (Bare Bones Software)
  93.     BBEdit Lite 2.3 and later (Bare Bones Software)
  94.     THINK C 5.0 and later (Symantec)
  95.     Symantec C++ 6.0 and later (Symantec)
  96.     CodeWarrior 1.0.1 and later (Metrowerks)
  97.     MPW Shell 3.0 and later (Apple Computer)
  98.     QUED/M 2.7 and later (Nisus Software)
  99.  
  100. If you are using the “native” MPW Shell, be advised that versions
  101. of the native Shell prior to 3.4b6 are incompatible with PopupFuncs.
  102. The first compatible version of the native MPW Shell is 3.4b6,
  103. which was released as part of the ETO 18 distribution.
  104. */
  105.  
  106. #pragma mark Changes from Previous Versions
  107.  
  108. /*
  109. Changes from Previous Versions
  110. ------- ---- -------- --------
  111.  
  112. Version 2.7:
  113.  
  114.     -    incorporates rewritten Pascal scanner, with much better support
  115.         for Object Pascal, and generally more reliable operation.
  116.         
  117.     -    C++ scanner adds support for overloaded operators.
  118.  
  119. Version 2.6.1:
  120.  
  121.     -    Incorporates support for CodeWarrior 1.3 (CW7 distribution)
  122.     
  123. Version 2.6:
  124.  
  125.     -    incorporates support for MPW Shell 3.4b6 and later
  126.     
  127. */
  128.  
  129. #pragma mark A Note About Technicolor
  130.  
  131. /*
  132. A Note About Technicolor
  133. - ---- ----- -----------
  134.  
  135. As a convenience, PopupFuncs 2.7 provides a facility for installing
  136. Chris Thomas' "Technicolor" utility. Technicolor is a tool for providing
  137. syntax-directed text coloring in environments that don't otherwise offer
  138. such a capability. In addition to installation from the PopupFuncs
  139. installer, the standard PopupFuncs distribution includes the latest
  140. version (0.9, as of this writing) of Technicolor.
  141.  
  142. Technicolor is not a product of Bare Bones Software, and we cannot
  143. support it. Please direct questions regarding Technicolor to Chris
  144. Thomas <ckt@best.com>.
  145.  
  146. */
  147.  
  148. #pragma mark Using PopupFuncs
  149.  
  150. /*
  151. Using PopupFuncs
  152. ----- ----------
  153.  
  154. PopupFuncs will place a pair of red dots in the title bar of any window that
  155. it believes contains a source file. To pop up a menu of functions in your
  156. source file, click either of the red dots. To sort the menu items by name,
  157. hold down the Shift key when clicking. To show the available PopupFuncs
  158. extensions, hold down the Command key when clicking.
  159.  
  160. In Rez source files, PopupFuncs will list defined resources. In C and C++
  161. source files, PopupFuncs will show types in addition to functions.
  162. */
  163.  
  164. #pragma mark Customizing PopupFuncs
  165.  
  166. /*
  167. Customizing PopupFuncs
  168. ----------- ----------
  169.  
  170. PopupFuncs includes a number of special-purpose resources, which can be
  171. edited to customize the behavior of PopupFuncs. These resources, along 
  172. with a ‘TMPL’ resource, are included in the PopupFuncs installer. If
  173. you change these resources in the PopupFuncs installer, the changes
  174. will be carried along with subsequent installations of PopupFuncs.
  175.  
  176. The resources have a type of ‘puf!’, and the standard ones are as follows:
  177.  
  178. ‘puf!’ 128 is a list of language-to-suffix mappings. The language code
  179. is zero-based, and progresses as follows:
  180.  
  181.     none = 0;
  182.     C = 1;
  183.     C++ = 2;
  184.     Pascal = 3;
  185.     Object Pascal = 4;
  186.     Rez = 5;
  187.     68K assembler = 6;
  188.     Fortran = 7;
  189.     
  190. You can edit the suffix mappings to add your own custom suffixes.
  191.  
  192. ‘puf!’ 129 is used to configure the 68K assembly-language parser. Each
  193. entry in this resource is a pair of label/operand pairs:
  194.  
  195.     0   - mark the label , major. (e.g. PROC,FUNC)
  196.     1   - mark the label, minor 
  197.     2   - mark the parameter, major. Useful for macros whose first parameter 
  198.             is the real function name.
  199.     3    - mark the label, local, with a † next to it (e.g. RECORD)
  200. */
  201.  
  202. #pragma mark Problems?
  203.  
  204. /*
  205. Problems?
  206. ---------
  207.  
  208. If you find that PopUpFuncs has difficulty with a particular source file,
  209. please send us a copy of your file. If the source file contains sensitive
  210. content, use the “Source Masher” utility to generate a copy of the source
  211. file without the sensitive information.
  212. */
  213.  
  214. #pragma mark Thanks!
  215.  
  216. /*
  217. Thanks!
  218. -------
  219.  
  220. Thank you for using PopupFuncs; we appreciate your support. If you
  221. have questions or problems, we encourage you to write, call, or send
  222. e-mail. (E-mail is the recommended way to contact us; we can reply very
  223. quickly, and it conserves paper.)
  224.  
  225. Bare Bones Software, Inc.
  226. P.O. Box 108
  227. Bedford, MA 01730
  228. (508) 651-3561 phone
  229. (508) 651-7584 fax
  230. bbsw@netcom.com [internet]
  231. http://www.tiac.net/biz/bbsw/ [World Wide Web]
  232. */
  233.  
  234. #pragma mark Legalese
  235.  
  236. /*
  237. License Agreement                                                        
  238. ------- ---------
  239.  
  240. You, the Licensee, assume responsibility for the selection of the
  241. program PopupFuncs to achieve your intended results, and for the
  242. installation, use, and results obtained from the program.  installing
  243. and using the program constitutes your acceptance of these terms and
  244. conditions.  If you do not accept these terms and conditions, then do
  245. not install or use the software.
  246.  
  247. License
  248. -------
  249.  
  250. You may use the program on a single machine and copy the program into
  251. any machine-readable or printed form for backup or support of your use
  252. of the program on the single machine, provided that no more than one
  253. copy of the program may be used on a single machine by more than one
  254. user at a time. You may distribute copies of the program to other
  255. individuals for non-commercial purposes, but may not sell, license, or
  256. include the program as part of a commercial distribution or compilation
  257. without express written permission of Bare Bones Software, Inc.
  258.  
  259. Limited warranty and limitation of remedies
  260. ------- -------- --- ---------- -- --------
  261.  
  262. The program and any support from Bare Bones Software, Inc., are provided
  263. “as is” and without warranty , express and implied, including but not
  264. limited to any implied warranties of merchantability and fitness for a
  265. particular purpose.  In no event will Bare Bones Software, Inc. be
  266. liable for any damages, including lost profits, lost savings, or other
  267. incidental or consequential damages, even if Bare Bones Software, Inc.
  268. is advised of the possibility of such damages, or for any claim by you
  269. or any third party.  
  270.  
  271. General Terms
  272. ------- -----
  273.  
  274. This Agreement can only be modified by a written agreement signed by you
  275. and Bare Bones Software, Inc., and changes from the terms and conditions
  276. of this Agreement made in any other manner will be of no effect.  If any
  277. portion of this Agreement shall be held invalid, illegal, or
  278. unenforceable, the validity, legality, and enforceability of the
  279. remainder of the Agreement shall not in any way be affected or impaired
  280. thereby.  This Agreement shall be governed by the laws of The
  281. Commonwealth of Massachusetts, without giving effect to conflict of laws
  282. provisions thereof.  As required by United States export regulations,
  283. you shall not permit export of the program or any direct products
  284. thereof to any country to which export is then controlled by the United
  285. States Office of Export Administration, unless you have that agency’s
  286. prior written approval.  
  287.  
  288. Use, duplication and disclosure by the United States Government of the
  289. program or any part thereof is subject to restrictions as set forth in
  290. subdivision (g)(3) of Rights in Data - General Clause in Federal
  291. Acquisition Regulations (“FAR”) 52.227.14, the Commercial Computer
  292. Software - Restricted Rights Clause in FAR 52.227.19. and/or subdivision
  293. c(1)(ii) of Rights in Technical Data and Computer Software Clause in
  294. Department of Defense FAR 252.227.7013.
  295.  
  296. Acknowledgment
  297. --------------
  298.  
  299. You acknowledge that you have read this agreement, understand it, and
  300. agree to be bound by its terms and conditions.  You further agree that
  301. it is the complete and exclusive statement of the agreement between you
  302. and Bare Bones Software, Inc. which supersedes all proposals or prior
  303. agreements, oral or written, and all other communications between you
  304. and Bare Bones Software, Inc. relating to the subject matter of this
  305. agreement.
  306. */
  307.